// 这个文件是关于api请求抽离的js文件，定义多个函数，对应也给页面调用函数即可
// 封装请求的时候建议  req+请求方式+功能名

// 全局配置axios的baseURL
// axios 可以配置基地址（不要每次都写重复的基础路径），只要设置了，发送请求就会默认拼接基地址
axios.defaults.baseURL = 'http://api-breakingnews-web.itheima.net'

// 请求拦截器和响应拦截器，有两个函数，函数一是正确的响应执行的函数，函数二是错误的响应执行的函数
// 添加响应拦截器
axios.interceptors.response.use(function (response) {
// 对响应数据做点什么 响应拦截器中response就是当前这次请求响应的结果,response中的data就是要的message和status所在的对象
    const {data:{status,message}} = response
    if(status === 0) {
        layer.msg(message)
    }
    return response    //返回值放在后面
    },function (error) {
        // 对响应错误做点什么
        return Promise.reject(error)
})

// 封装注册的api接口
const reqPostRegister = (obj) => {
    return axios({
        method:'post',
        url:'/api/reguser',
        // post请求携带参数使用data，get请求携带参数使用params
        data: handleDataFormat(obj) //直接调用工具函数处理数据得到
    })
}

// 封装登录的api接口
const reqPostLogin = (obj) =>{
    return axios({
        method:'post',
        url:'/api/login',
        data: handleDataFormat(obj)
    })
}




// 封装通用的函数
// 1.主要业务逻辑封装
// 2.处理的数据 考虑到参数的问题
// 3.处理的数据别人要用必须加返回值